<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="Content-Language" content="zh-CN"><title>systemd.syntax
  中文手册 [金步国]</title><style>
@font-face { font-family: "JinBuGuoWebMono"; src: url("http://www.jinbuguo.com/d/mono.ttf") format("truetype"); }
* { font-family: "JinBuGuoWebMono", "Ubuntu Mono", "Consolas", "Menlo", monospace; }
body { margin:10px; }
h1 { text-align:center; background:#ddd; }
h2#auth_name { text-align:center; margin: 10px 5%; }

    a.headerlink {
      color: #c60f0f;
      font-size: 0.8em;
      padding: 0 4px 0 4px;
      text-decoration: none;
      visibility: hidden;
    }

    a.headerlink:hover {
      background-color: #c60f0f;
      color: white;
    }

    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
      visibility: visible;
    }
</style><script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?d286c55b63a3c54a1e43d10d4c203e75"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><h1>systemd.syntax 中文手册</h1><h2 id="auth_name">译者：<strong><a href="http://www.jinbuguo.com/">金步国</a></strong></h2><hr><h3>版权声明</h3><p>本文译者是一位开源理念的坚定支持者，所以本文虽然不是软件，但是遵照开源的精神发布。</p><ul><li>无担保：本文译者不保证译文内容准确无误，亦不承担任何由于使用此文档所导致的损失。</li><li>自由使用：任何人都可以自由的<u>阅读/链接/打印</u>此文档，无需任何附加条件。</li><li>名誉权：任何人都可以自由的<u>转载/引用/再创作</u>此文档，但必须保留译者署名并注明出处。</li></ul><h3>其他作品</h3><p>本文译者十分愿意与他人分享劳动成果，如果你对我的其他翻译作品或者技术文章有兴趣，可以在如下位置查看现有的作品集：</p><ul><li><a href="http://www.jinbuguo.com/">金步国作品集</a> [ <a href="http://www.jinbuguo.com/">http://www.jinbuguo.com/</a> ]</li></ul><h3>联系方式</h3><p>由于译者水平有限，因此不能保证译文内容准确无误。如果你发现了译文中的错误(哪怕是错别字也好)，请来信指出，任何提高译文质量的建议我都将虚心接纳。</p><ul><li>Email(QQ)：70171448在QQ邮箱</li></ul><hr><a href="systemd.index.html">手册索引</a> ·
  <a href="systemd.directives.html">指令索引</a><span style="float:right">systemd-241</span><hr><div class="refentry"><a name="systemd.syntax"></a><div class="titlepage"></div><div class="refnamediv"><h2>名称</h2><p>systemd.syntax — systemd 通用配置语法</p></div><div class="refsect1"><a name="id-1.4"></a><h2 id="简介">简介<a class="headerlink" title="Permalink to this headline" href="systemd.syntax.html#%E7%AE%80%E4%BB%8B">¶</a></h2><p>本手册页讲述的配置语法适用于
    <a href="systemd.html#"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
    以及相关程序的配置文件：
    </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>systemd 单元文件：
      <a href="systemd.unit.html#"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
      <a href="systemd.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
      <a href="systemd.socket.html#"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>,
      <a href="systemd.device.html#"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>,
      <a href="systemd.mount.html#"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>,
      <a href="systemd.automount.html#"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>,
      <a href="systemd.swap.html#"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a>,
      <a href="systemd.target.html#"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a>,
      <a href="systemd.path.html#"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>,
      <a href="systemd.timer.html#"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>,
      <a href="systemd.slice.html#"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a>,
      <a href="systemd.scope.html#"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a></p></li><li class="listitem"><p>守护进程配置文件：
      <a href="systemd-system.conf.html#"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>,

      <a href="logind.conf.html#"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a>,
      <a href="journald.conf.html#"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>,
      <a href="journal-remote.conf.html#"><span class="citerefentry"><span class="refentrytitle">journal-remote.conf</span>(5)</span></a>,
      <a href="journal-upload.conf.html#"><span class="citerefentry"><span class="refentrytitle">journal-upload.conf</span>(5)</span></a>,
      <a href="systemd-sleep.conf.html#"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>,
      <a href="timesyncd.conf.html#"><span class="citerefentry"><span class="refentrytitle">timesyncd.conf</span>(5)</span></a>
      </p></li></ul></div><p>
    </p><p>这种语法借鉴了
    <a class="ulink" href="https://standards.freedesktop.org/desktop-entry-spec/latest/" target="_top">XDG Desktop Entry Specification</a>
    <code class="filename">.desktop</code> 文件语法，而后者又借鉴了 Microsoft Windows
    <code class="filename">.ini</code> 文件语法。
    </p><p>每个配置文件都是纯文本文件，文件内容由一个个小节组成，每个小节都由一个"[标题]"格式的标题行开始，
    后面跟着一行行 <em class="replaceable"><code>key</code></em>=<em class="replaceable"><code>value</code></em> 格式的配置项。
    空行、以 "<code class="literal">#</code>" 或 "<code class="literal">;</code>" 开头的行(用作注释)
    都将被忽略。</p><p>行尾的反斜线(\)是续行符，表示将下一行拼接到本行末尾，同时将反斜线本身替换为一个空格。
    这样可以将一个超长的行分拆为几个较短的行。
    虽然单行长度的上限很大(当前是 1 MB)，但是依然建议不要使用太长的单行，而应该分拆为几个较短的行，
    或者在条件允许的情况下，使用多个指令、变量替换，或配置文件允许的其他方法来避免超长的单行。
    当续行符之后紧跟一行或多行注释时，整个注释块都将被忽略，
    续行符将跳过整个注释块，而与注释块后面的内容进行拼接。</p><div class="example"><a name="id-1.4.6"></a><p class="title"><b>例 1. </b></p><div class="example-contents"><pre class="programlisting">[Section A]
KeyOne=value 1
KeyTwo=value 2

# 一行注释

[Section B]
Setting="something" "some thing" "…"
KeyTwo=value 2 \
       value 2 continued

[Section C]
KeyThree=value 2\
# 这一行将被忽略
; 这一行也会被忽略
       value 2 continued
</pre></div></div><br class="example-break"><p>配置文件中的布尔值可以有多种写法。
    真值可以写为：
    <code class="option">1</code>, <code class="option">yes</code>, <code class="option">true</code>,
     <code class="option">on</code> 之一，假值可以写为：
     <code class="option">0</code>, <code class="option">no</code>,
    <code class="option">false</code>, <code class="option">off</code>
    之一。</p><p>配置文件中的时间长度可以有多种写法：不带任何后缀的一个纯数值表示秒数；
    亦可在纯数值后面加上时间单位；
    亦可以将多个带有时间单位后缀的时间长度使用空格连接起来，表示这几段时间长度之和。
    例如： "<code class="literal">50</code>" 表示50秒； "<code class="literal">2min 200ms</code>" 表示2分200毫秒，也就是120200毫秒；
    可使用的时间单位如下：
    "<code class="literal">s</code>", "<code class="literal">min</code>", "<code class="literal">h</code>", "<code class="literal">d</code>",
    "<code class="literal">w</code>", "<code class="literal">ms</code>", "<code class="literal">us</code>" 。详见
    <a href="systemd.time.html#"><span class="citerefentry"><span class="refentrytitle">systemd.time</span>(7)</span></a> 手册。</p><p>很多配置选项都允许多次使用，但是对于多次使用的解释可能有所不同。
    一般来说，多次使用同一个配置选项表示将多次设置的列表融合成一个更大的列表，
    但是若设为空则表示清空该配置选项之前所有已经设置的列表。
    这种情况一定会在该配置选项的说明中提到。
    注意，允许多次设置同一配置选项是不兼容于 XDG <code class="filename">.desktop</code>
    文件格式的。</p></div><div class="refsect1"><a name="id-1.5"></a><h2 id="参见">参见<a class="headerlink" title="Permalink to this headline" href="systemd.syntax.html#%E5%8F%82%E8%A7%81">¶</a></h2><p>
      <a href="systemd.time.html#"><span class="citerefentry"><span class="refentrytitle">systemd.time</span>(7)</span></a>
    </p></div></div></body></html>
